package com.briup.common.properties;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * cors配置属性
 * @author wood
 */
@ConfigurationProperties(prefix = "briup.config.cors")
@Data
@Component
public class CorsConfigProperties {

    // 跨域设置相关参数及默认值
    // 允许跨域方法的资源路径
    private String mapping = "/**";
    // 允许跨域访问的客户端IP
    private String[] allowedOrigins = {"*"};
    // 允许跨域访问的请求方式
    private String[] allowedMethods = {"GET","POST","PUT","OPTIONS","DELETE","PATCH"};
    // 允许跨域访问的请求头字段
    private String[] allowedHeaders = {"*"};
    // 是否允许携带cookie凭证
    private boolean allowCredentials = false;
    // 设置缓存OPTIONS预检测结果的时间
    // 这样在一定时间内，只有第一次发送请求的时候需要额外发送预检测请求（OPTIONS），后面的就直接发送请求了
    private int maxAge = 3600;

}
